package pe.gob.servir.apps.censodirectivo.ejb.dao;

import java.util.List;

import javax.ejb.Local;

import pe.gob.servir.apps.censodirectivo.common.dao.BaseDAO;
import pe.gob.servir.apps.censodirectivo.excepcion.DAOExcepcion;
import pe.gob.servir.apps.censodirectivo.model.bean.BusquedaResponsable;
import pe.gob.servir.apps.censodirectivo.model.bean.MensajeRespuesta;
import pe.gob.servir.apps.censodirectivo.model.bean.Responsable;
import pe.gob.servir.apps.censodirectivo.persistence.entity.TblResponsable;

@Local
public interface ResponsableDAOLocal extends BaseDAO<TblResponsable> {

	List<Responsable> filtrarListaResponsable(BusquedaResponsable busquedaResponsable) throws DAOExcepcion;
	
	Responsable buscarResponsableId(Long idResponsable) throws DAOExcepcion;

	List<Responsable> validarCargaResponsable(String idCarga, String usuario) throws DAOExcepcion;

	MensajeRespuesta insertarResponsable(Responsable responsable) throws DAOExcepcion;
	
	MensajeRespuesta ampliarRegistroDirectivo(Responsable responsable, BusquedaResponsable busquedaResponsable,  String tipoAmpliacion) throws DAOExcepcion;
	
	MensajeRespuesta habilitarResponsables(Responsable responsable, BusquedaResponsable busquedaResponsable) throws DAOExcepcion;
	
	public MensajeRespuesta activarInactivarResponsable(long idResponsable, String tipo) throws DAOExcepcion;

	List<Responsable> buscarReponsableEntidadCenso(Integer censoId,
			Integer entidadId) throws DAOExcepcion;
}
